Skip to content

Bump the npm_and_yarn group across 1 directory with 3 updates#6

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/npm_and_yarn-db577a647d
Open

Bump the npm_and_yarn group across 1 directory with 3 updates#6
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/npm_and_yarn-db577a647d

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot Bot commented on behalf of github May 7, 2026

Bumps the npm_and_yarn group with 3 updates in the / directory: next, hono and ip-address.

Updates next from 16.2.1 to 16.2.3

Release notes

Sourced from next's releases.

v16.2.3

[!NOTE] This release is backporting security and bug fixes. For more information about the fixed security vulnerability, please see https://vercel.com/changelog/summary-of-cve-2026-23869. The release does not include all pending features/changes on canary.

Core Changes

  • Ensure app-page reports stale ISR revalidation errors via onRequestError (#92282)
  • Fix [Bug]: manifest.ts breaks HMR in Next.js 16.2 (#91981 through #92273)
  • Deduplicate output assets and detect content conflicts on emit (#92292)
  • Fix styled-jsx race condition: styles lost due to concurrent rendering (#92459)
  • turbo-tasks-backend: stability fixes for task cancellation and error handling (#92254)

Credits

Huge thanks to @​icyJoseph, @​sokra, @​wbinnssmith, @​eps1lon and @​ztanner for helping!

v16.2.2

[!NOTE] This release is backporting bug fixes. It does not include all pending features/changes on canary.

Core Changes

  • backport: Move expanded adapters docs to API reference (#92115) (#92129)
  • Backport: TypeScript v6 deprecations for baseUrl and moduleResolution (#92130)
  • [create-next-app] Skip interactive prompts when CLI flags are provided (#91840)
  • next.config.js: Accept an option for serverFastRefresh (#91968)
  • Turbopack: enable server HMR for app route handlers (#91466)
  • Turbopack: exclude metadata routes from server HMR (#92034)
  • Fix CI for glibc linux builds
  • Backport: disable bmi2 in qfilter #92177
  • [backport] Fix CSS HMR on Safari (#92174)

Credits

Huge thanks to @​nextjs-bot, @​icyJoseph, @​ijjk, @​gaojude, @​wbinnssmith, @​lukesandberg, and @​bgw for helping!

Commits
  • d5f649b v16.2.3
  • 2873928 [16.x] Avoid consuming cyclic models multiple times (#75)
  • d7c7765 [backport]: Ensure app-page reports stale ISR revalidation errors via onReque...
  • c573e8c fix(server-hmr): metadata routes overwrite page runtime HMR handler (#92273)
  • 57b8f65 next-core: deduplicate output assets and detect content conflicts on emit (#9...
  • f158df1 Fix styled-jsx race condition: styles lost due to concurrent rendering (#92459)
  • 356d605 turbo-tasks-backend: stability fixes for task cancellation and error handling...
  • 3b77a6e Fix DashMap read-write self-deadlock in task_cache causing hangs (#92210)
  • b2f208a Backport: new view-transitions guide, update and fixes (#92264)
  • 52faae3 v16.2.2
  • Additional commits viewable in compare view

Updates hono from 4.12.12 to 4.12.18

Release notes

Sourced from hono's releases.

v4.12.18

Security fixes

This release includes fixes for the following security issues:

Cache Middleware ignores Vary: Authorization / Vary: Cookie leading to cross-user cache leakage

Affects: Cache Middleware. Fixes missing cache-skip handling for Vary: Authorization and Vary: Cookie, where a response cached for one authenticated user could be served to other users. GHSA-p77w-8qqv-26rm

CSS Declaration Injection via Style Object Values in JSX SSR

Affects: hono/jsx. Fixes a missing CSS-context escape for style object values and property names, where untrusted input could inject additional CSS declarations. The impact is limited to CSS and does not allow JavaScript execution. GHSA-qp7p-654g-cw7p

Improper validation of NumericDate claims (exp, nbf, iat) in JWT verify()

Affects: hono/utils/jwt. Fixes improper validation of exp, nbf, and iat claims, where falsy, non-finite, or non-numeric values could silently bypass time-based checks instead of being rejected per RFC 7519. GHSA-hm8q-7f3q-5f36


Users who use the JWT helper, hono/jsx, or the Cache middleware are strongly encouraged to upgrade to this version.

v4.12.17

What's Changed

New Contributors

Full Changelog: honojs/hono@v4.12.16...v4.12.17

v4.12.16

Security fixes

This release includes fixes for the following security issues:

Unvalidated JSX Tag Names in hono/jsx May Allow HTML Injection

Affects: hono/jsx. Fixes missing validation of JSX tag names when using jsx() or createElement(), which could allow HTML injection if untrusted input is used as the tag name. GHSA-69xw-7hcm-h432

bodyLimit() can be bypassed for chunked / unknown-length requests

Affects: Body Limit Middleware. Fixes late enforcement for request bodies without a reliable Content-Length (e.g. chunked requests), where oversized requests could reach handlers and return successful responses before being rejected. GHSA-9vqf-7f2p-gf9v

v4.12.15

What's Changed

... (truncated)

Commits

Updates ip-address from 10.1.0 to 10.2.0

Commits

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions
    You can disable automated security fix PRs for this repo from the Security Alerts page.

Bumps the npm_and_yarn group with 3 updates in the / directory: [next](https://github.com/vercel/next.js), [hono](https://github.com/honojs/hono) and [ip-address](https://github.com/beaugunderson/ip-address).


Updates `next` from 16.2.1 to 16.2.3
- [Release notes](https://github.com/vercel/next.js/releases)
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js)
- [Commits](vercel/next.js@v16.2.1...v16.2.3)

Updates `hono` from 4.12.12 to 4.12.18
- [Release notes](https://github.com/honojs/hono/releases)
- [Commits](honojs/hono@v4.12.12...v4.12.18)

Updates `ip-address` from 10.1.0 to 10.2.0
- [Commits](https://github.com/beaugunderson/ip-address/commits)

---
updated-dependencies:
- dependency-name: next
  dependency-version: 16.2.3
  dependency-type: direct:production
  dependency-group: npm_and_yarn
- dependency-name: hono
  dependency-version: 4.12.18
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: ip-address
  dependency-version: 10.2.0
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code labels May 7, 2026
@vercel
Copy link
Copy Markdown

vercel Bot commented May 7, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
racs Error Error May 7, 2026 3:22am

@cloudflare-workers-and-pages
Copy link
Copy Markdown

cloudflare-workers-and-pages Bot commented May 7, 2026

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Updated (UTC)
❌ Deployment failed
View logs
racs aa5cf68 May 07 2026, 03:22 AM

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 7, 2026

Dependency Review

✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.

OpenSSF Scorecard

Scorecard details
PackageVersionScoreDetails
npm/@next/env 16.2.3 🟢 5.9
Details
CheckScoreReason
Code-Review🟢 9Found 29/30 approved changesets -- score normalized to 9
Maintained🟢 1030 commit(s) and 8 issue activity found in the last 90 days -- score normalized to 10
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
License🟢 10license file detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Packaging🟢 10packaging workflow detected
Branch-Protection🟢 4branch protection is not maximal on development and all release branches
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies⚠️ 2dependency not pinned by hash detected -- score normalized to 2
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@next/swc-darwin-arm64 16.2.3 🟢 5.9
Details
CheckScoreReason
Code-Review🟢 9Found 29/30 approved changesets -- score normalized to 9
Maintained🟢 1030 commit(s) and 8 issue activity found in the last 90 days -- score normalized to 10
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
License🟢 10license file detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Packaging🟢 10packaging workflow detected
Branch-Protection🟢 4branch protection is not maximal on development and all release branches
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies⚠️ 2dependency not pinned by hash detected -- score normalized to 2
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@next/swc-darwin-x64 16.2.3 🟢 5.9
Details
CheckScoreReason
Code-Review🟢 9Found 29/30 approved changesets -- score normalized to 9
Maintained🟢 1030 commit(s) and 8 issue activity found in the last 90 days -- score normalized to 10
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
License🟢 10license file detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Packaging🟢 10packaging workflow detected
Branch-Protection🟢 4branch protection is not maximal on development and all release branches
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies⚠️ 2dependency not pinned by hash detected -- score normalized to 2
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@next/swc-linux-arm64-gnu 16.2.3 🟢 5.9
Details
CheckScoreReason
Code-Review🟢 9Found 29/30 approved changesets -- score normalized to 9
Maintained🟢 1030 commit(s) and 8 issue activity found in the last 90 days -- score normalized to 10
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
License🟢 10license file detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Packaging🟢 10packaging workflow detected
Branch-Protection🟢 4branch protection is not maximal on development and all release branches
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies⚠️ 2dependency not pinned by hash detected -- score normalized to 2
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@next/swc-linux-arm64-musl 16.2.3 🟢 5.9
Details
CheckScoreReason
Code-Review🟢 9Found 29/30 approved changesets -- score normalized to 9
Maintained🟢 1030 commit(s) and 8 issue activity found in the last 90 days -- score normalized to 10
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
License🟢 10license file detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Packaging🟢 10packaging workflow detected
Branch-Protection🟢 4branch protection is not maximal on development and all release branches
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies⚠️ 2dependency not pinned by hash detected -- score normalized to 2
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@next/swc-linux-x64-gnu 16.2.3 🟢 5.9
Details
CheckScoreReason
Code-Review🟢 9Found 29/30 approved changesets -- score normalized to 9
Maintained🟢 1030 commit(s) and 8 issue activity found in the last 90 days -- score normalized to 10
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
License🟢 10license file detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Packaging🟢 10packaging workflow detected
Branch-Protection🟢 4branch protection is not maximal on development and all release branches
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies⚠️ 2dependency not pinned by hash detected -- score normalized to 2
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@next/swc-linux-x64-musl 16.2.3 🟢 5.9
Details
CheckScoreReason
Code-Review🟢 9Found 29/30 approved changesets -- score normalized to 9
Maintained🟢 1030 commit(s) and 8 issue activity found in the last 90 days -- score normalized to 10
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
License🟢 10license file detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Packaging🟢 10packaging workflow detected
Branch-Protection🟢 4branch protection is not maximal on development and all release branches
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies⚠️ 2dependency not pinned by hash detected -- score normalized to 2
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@next/swc-win32-arm64-msvc 16.2.3 🟢 5.9
Details
CheckScoreReason
Code-Review🟢 9Found 29/30 approved changesets -- score normalized to 9
Maintained🟢 1030 commit(s) and 8 issue activity found in the last 90 days -- score normalized to 10
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
License🟢 10license file detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Packaging🟢 10packaging workflow detected
Branch-Protection🟢 4branch protection is not maximal on development and all release branches
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies⚠️ 2dependency not pinned by hash detected -- score normalized to 2
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@next/swc-win32-x64-msvc 16.2.3 🟢 5.9
Details
CheckScoreReason
Code-Review🟢 9Found 29/30 approved changesets -- score normalized to 9
Maintained🟢 1030 commit(s) and 8 issue activity found in the last 90 days -- score normalized to 10
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
License🟢 10license file detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Packaging🟢 10packaging workflow detected
Branch-Protection🟢 4branch protection is not maximal on development and all release branches
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies⚠️ 2dependency not pinned by hash detected -- score normalized to 2
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/express-rate-limit 8.5.1 UnknownUnknown
npm/hono 4.12.18 UnknownUnknown
npm/ip-address 10.2.0 🟢 4.1
Details
CheckScoreReason
Token-Permissions⚠️ -1No tokens found
Packaging⚠️ -1packaging workflow not detected
Dangerous-Workflow⚠️ -1no workflows found
Code-Review⚠️ 0Found 1/30 approved changesets -- score normalized to 0
Maintained🟢 1025 commit(s) and 12 issue activity found in the last 90 days -- score normalized to 10
Binary-Artifacts🟢 10no binaries found in the repo
Pinned-Dependencies⚠️ -1no dependencies found
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Security-Policy⚠️ 0security policy file not detected
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md
Signed-Releases⚠️ -1no releases found
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/next 16.2.3 🟢 5.9
Details
CheckScoreReason
Code-Review🟢 9Found 29/30 approved changesets -- score normalized to 9
Maintained🟢 1030 commit(s) and 8 issue activity found in the last 90 days -- score normalized to 10
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
License🟢 10license file detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Packaging🟢 10packaging workflow detected
Branch-Protection🟢 4branch protection is not maximal on development and all release branches
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies⚠️ 2dependency not pinned by hash detected -- score normalized to 2
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0

Scanned Files

  • package-lock.json

@codacy-production
Copy link
Copy Markdown

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

🟢 Metrics 0 complexity · 0 duplication

Metric Results
Complexity 0
Duplication 0

View in Codacy

NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.

@deepsource-io
Copy link
Copy Markdown

deepsource-io Bot commented May 7, 2026

DeepSource Code Review

We reviewed changes in 4e9fef7...aa5cf68 on this pull request. Below is the summary for the review, and you can see the individual issues we found as inline review comments.

See full review on DeepSource ↗

PR Report Card

Overall Grade   Security  

Reliability  

Complexity  

Hygiene  

Code Review Summary

Analyzer Status Updated (UTC) Details
JavaScript May 7, 2026 3:22a.m. Review ↗
Secrets May 7, 2026 3:22a.m. Review ↗

Important

AI Review is run only on demand for your team. We're only showing results of static analysis review right now. To trigger AI Review, comment @deepsourcebot review on this thread.

Copy link
Copy Markdown

@codethreat-appsec codethreat-appsec Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Summary

This PR upgrades the Next.js runtime from 16.2.1 to 16.2.3 and introduces a new RACS dashboard UI that integrates with Supabase to display and create cheat reports.

Features

  • Dashboard page (src/app/page.js) that:
    • Fetches reports from the reports Supabase table and displays them as cards with search and basic analytics (today/week/month/year counts and deltas).
    • Shows a detailed incident view in a modal-like overlay using Framer Motion when a report is selected.
    • Provides a fullscreen “Analytics” placeholder view for future charting.
    • Allows authenticated users (via Supabase GitHub OAuth) to add new reports through a dialog form.
  • UI component library additions:
    • Card, Button, Badge, Input, Textarea, and Dialog components with Tailwind-based styling and Radix UI primitives.
  • Root layout (src/app/layout.js) that wires up global fonts (Geist) and base HTML/body structure.

Bug Fixes

  • None explicitly targeted; changes are additive and structural.

Breaking Changes

  • None identified in the provided code. The Next.js upgrade is a patch-level bump (16.2.1 → 16.2.3) and the new components/pages are additive.

Architecture Diagram

sequenceDiagram
    participant Browser as Browser (User)
    participant NextApp as Next.js App Router
    participant Dashboard as Dashboard Page (app/page.js)
    participant Supabase as Supabase Backend

    Browser->>NextApp: Request /
    NextApp-->>Browser: Serve layout (layout.js) + dashboard shell

    Browser->>Dashboard: Mount Dashboard component
    Dashboard->>Supabase: auth.getUser()
    Supabase-->>Dashboard: User (or null)

    Dashboard->>Supabase: from("reports").select().order(...)
    Supabase-->>Dashboard: Reports list
    Dashboard-->>Browser: Render metrics, search, report cards

    Browser->>Dashboard: Click "Add report" (authenticated)
    Dashboard-->>Browser: Open Dialog (form)

    Browser->>Dashboard: Submit form
    Dashboard->>Supabase: from("reports").insert(payload)
    Supabase-->>Dashboard: Insert result
    Dashboard->>Supabase: Re-fetch reports
    Supabase-->>Dashboard: Updated reports
    Dashboard-->>Browser: Updated list and metrics
Loading

Copy link
Copy Markdown

@codethreat-appsec codethreat-appsec Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Summary

Updates the dashboard to a styled, interactive Next.js 16.2.3 app with a Supabase-backed “cheater reports” dashboard UI, including reusable UI primitives (buttons, cards, dialogs, inputs) and a main dashboard page for viewing and adding reports.

Features

  • Dashboard layout and theming

    • src/app/layout.js sets up the root HTML structure, global fonts (Geist, Geist_Mono), and base body layout.
    • src/app/page.js implements a client-side dashboard using the App Router, with a sticky header, metrics, search, and responsive layout.
  • Supabase-backed reports dashboard

    • Fetches reports from Supabase (supabase.from("reports")) ordered by reported_date and created_at.
    • Displays key metrics (today/week/month/year counts and deltas) computed from reported_date.
    • Provides search across username, game, status, and notes.
    • Shows a list of report cards with status badges, notes preview, and “video attached” indicator.
  • Report detail and analytics views

    • Clicking a report opens a modal-style detail view with full notes, status, and video URL.
    • “Analytics” button opens a full-screen analytics placeholder view for future charting.
  • Add-report flow with authentication

    • Uses Supabase auth (supabase.auth.getUser, signInWithOAuth, signOut) to gate report creation.
    • “Add report” opens a dialog with a form for username, game, date/time, status, video URL, and notes.
    • Submits a new row to the reports table with created_by set to the authenticated user’s id.
  • Reusable UI components

    • Button, Badge, Card, Input, Textarea, and Dialog components built with Tailwind, class-variance-authority, and Radix primitives.
    • Shared cn utility (src/lib/utils.js) for class merging via clsx and tailwind-merge.
  • Tooling and analysis

    • Adds sonar-project.properties for SonarCloud configuration.
    • Bumps next dependency from 16.2.1 to 16.2.3 and aligns lockfile and SWC binaries.

Bug Fixes

  • None explicitly targeted; this PR is primarily new implementation and dependency alignment.

Breaking Changes

  • None identified in the provided code. Existing behavior is replaced by the new dashboard implementation, but there are no public API or route renames within the shown files.

Architecture Diagram

sequenceDiagram
    participant Browser as Browser (Dashboard UI)
    participant Next as Next.js App (App Router)
    participant Supabase as Supabase Backend

    Browser->>Next: Request / (Dashboard)
    Next-->>Browser: Render Dashboard (layout.js + page.js)

    Note over Browser,Next: Initial load

    Browser->>Supabase: auth.getUser()
    Supabase-->>Browser: { user | null }

    Browser->>Supabase: from("reports").select().order(...)
    Supabase-->>Browser: [reports]

    Note over Browser: useEffect: getUser() + fetchReports()

    Browser->>Browser: useMemo(stats) from reports
    Browser->>Browser: Filter reports by search query

    Note over Browser: User interactions

    Browser->>Supabase: auth.signInWithOAuth("github") (Login)
    Supabase-->>Browser: Redirect / session

    Browser->>Supabase: from("reports").insert(payload) (Add report)
    Supabase-->>Browser: Insert result
    Browser->>Supabase: from("reports").select() (Refresh list)
    Supabase-->>Browser: [updated reports]

    Browser->>Browser: Open/close detail modal & analytics overlay
    Browser->>Browser: Open/close add-report dialog (Radix Dialog + Button/Input/Textarea)
Loading

Copy link
Copy Markdown

@codethreat-appsec codethreat-appsec Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Summary

This PR upgrades the Next.js runtime to 16.2.3 and introduces a new RACS dashboard UI built with the App Router, Supabase, and a small design system of reusable UI components.

Features

  • Dashboard page (src/app/page.js) that:
    • Authenticates users via Supabase GitHub OAuth.
    • Fetches reports from Supabase, computes daily/weekly/monthly/yearly stats, and displays them as metric cards.
    • Provides search over username, game, status, and notes.
    • Shows a detailed incident view in a modal for a selected report.
    • Includes a fullscreen “Analytics” placeholder view.
    • Allows authenticated users to add new reports via a dialog form, persisting to the reports table.
  • Layout setup (src/app/layout.js) with Geist fonts and global structure for the App Router.
  • UI component library under src/components/ui:
    • Button, Badge, Card, Input, Textarea, and Dialog abstractions with consistent Tailwind-based styling and variants.
  • Utility function cn (src/lib/utils.js) to merge class names using clsx and tailwind-merge.
  • SonarCloud project configuration (sonar-project.properties) for static analysis.

Bug Fixes

  • None explicitly targeted; changes are additive and structural.

Breaking Changes

  • None identified in the provided code. The Next.js bump from 16.2.1 to 16.2.3 is a patch-level upgrade and the app uses only public, compatible APIs (app directory, next/font/google, standard React hooks).

Architecture Diagram

sequenceDiagram
    participant Browser as Browser (User)
    participant NextApp as Next.js App (App Router)
    participant Supabase as Supabase Backend
    participant UI as UI Components (Button/Card/Dialog/etc.)

    Browser->>NextApp: Request / (Dashboard)
    NextApp->>Supabase: supabase.auth.getUser()
    Supabase-->>NextApp: User (or null)
    NextApp->>Supabase: SELECT * FROM reports ORDER BY reported_date, created_at
    Supabase-->>NextApp: Reports[]
    NextApp->>UI: Render metrics, list, dialogs with props
    UI-->>Browser: Interactive dashboard (cards, modals, forms)

    Browser->>NextApp: Click "Login"
    NextApp->>Supabase: auth.signInWithOAuth(provider="github")

    Browser->>NextApp: Submit "Add report" form
    NextApp->>Supabase: INSERT INTO reports (payload)
    Supabase-->>NextApp: Insert result
    NextApp->>Supabase: Re-fetch reports
    Supabase-->>NextApp: Updated Reports[]
    NextApp->>UI: Re-render dashboard with new data
Loading

Copy link
Copy Markdown

@codethreat-appsec codethreat-appsec Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Summary

Updates the dashboard to use a richer UI component set (buttons, badges, cards, dialogs, inputs, textareas) and implements a client-side RACS dashboard page backed by Supabase, while bumping Next.js to 16.2.3.

Features

  • Adds reusable UI primitives:
    • Button, Badge, Card, Dialog, Input, and Textarea components built on Tailwind, class-variance-authority, and Radix primitives.
  • Implements the main RACS dashboard page (src/app/page.js):
    • Fetches reports from Supabase and displays them as cards with search and summary metrics (today/week/month/year).
    • Shows detailed report information in an animated overlay when a report is selected.
    • Provides a fullscreen “Analytics” placeholder view for future charting.
    • Adds an “Add report” dialog with a form to create new reports, including username, game, status, date/time, video URL, and notes.
    • Integrates GitHub OAuth login/logout via Supabase and associates new reports with the authenticated user.
  • Configures global layout (src/app/layout.js) with Geist fonts and base page structure.

Bug Fixes

  • None explicitly targeted; changes are additive and structural.

Breaking Changes

  • None identified in the provided code. Existing routes and components remain compatible, and the Next.js version bump is a patch-level update (16.2.1 → 16.2.3) with no incompatible usage in the current code.

Architecture Diagram

sequenceDiagram
    participant Browser as Browser (Dashboard UI)
    participant NextApp as Next.js App Router
    participant Supabase as Supabase Client
    participant DB as Supabase DB (reports)

    Browser->>NextApp: Load / (Dashboard)
    NextApp-->>Browser: Render Dashboard (React, UI components)

    Browser->>Supabase: supabase.auth.getUser()
    Supabase-->>Browser: Authenticated user (or null)

    Browser->>Supabase: from("reports").select().order(...)
    Supabase->>DB: Query reports
    DB-->>Supabase: Report rows
    Supabase-->>Browser: Reports data
    Browser-->>Browser: Compute stats & render cards

    Browser->>Supabase: auth.signInWithOAuth({ provider: "github" })
    Supabase-->>Browser: Redirect to GitHub OAuth (handled externally)

    Browser->>Supabase: from("reports").insert(payload)
    Supabase->>DB: Insert new report
    DB-->>Supabase: Insert result
    Supabase-->>Browser: Success
    Browser->>Supabase: Re-fetch reports
    Supabase->>DB: Query updated reports
    DB-->>Supabase: Updated rows
    Supabase-->>Browser: Updated reports
Loading

Copy link
Copy Markdown

@codethreat-appsec codethreat-appsec Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Summary

Updates the dashboard UI to use a new shadcn-style component set (buttons, cards, badges, inputs, dialogs, textareas) and implements a Supabase-backed “RACS” anti-cheat dashboard with reporting, search, and basic analytics. Also bumps Next.js from 16.2.1 to 16.2.3 and aligns lockfile dependencies.

Features

  • RACS Dashboard page (src/app/page.js)
    • Implements a client-side dashboard (Dashboard) that:
      • Authenticates via Supabase GitHub OAuth (supabase.auth.signInWithOAuth, signOut, getUser).
      • Fetches reports from the reports table, ordered by reported_date and created_at.
      • Displays key metrics (today/week/month/year counts and diffs) computed from reported_date.
      • Provides a searchable list of reports (search across username, game, status, notes).
      • Shows a detailed modal for a selected report (status, video URL, notes).
      • Includes a fullscreen “Analytics” placeholder view.
      • Allows authenticated users to add new reports via a dialog form (username, game, status, date/time, video URL, notes).
  • UI Component Library
    • Button (src/components/ui/button.jsx)
      • Adds a variant/size-based button using class-variance-authority and cn, with support for asChild via radix-ui Slot.
    • Badge (src/components/ui/badge.jsx)
      • Adds a variant-based badge component with asChild support and consistent styling.
    • Card (src/components/ui/card.jsx)
      • Adds a composable card API (Card, CardHeader, CardTitle, CardDescription, CardAction, CardContent, CardFooter) used throughout the dashboard.
    • Input (src/components/ui/input.jsx)
      • Adds a styled input component with consistent focus/invalid/disabled states.
    • Textarea (src/components/ui/textarea.jsx)
      • Adds a styled textarea component with consistent behavior and sizing.
    • Dialog (src/components/ui/dialog.jsx)
      • Wraps radix-ui dialog primitives into a higher-level API (Dialog, DialogTrigger, DialogContent, DialogHeader, DialogFooter, DialogTitle, DialogDescription, etc.) with overlay, content animations, and optional close buttons.
  • Layout and Fonts
    • Root layout (src/app/layout.js)
      • Configures global fonts (Geist, Geist_Mono), HTML structure, and metadata for “RACS Dashboard”.
    • Utility (src/lib/utils.js)
      • Adds a cn helper combining clsx and tailwind-merge for class name composition.

Bug Fixes

  • None explicitly addressed; this PR is primarily new functionality and dependency alignment.

Breaking Changes

  • None identified in the provided code. Existing app router structure is preserved, and the Next.js change is a patch-level bump from 16.2.1 to 16.2.3.

Architecture Diagram

sequenceDiagram
    participant Browser as Browser (User)
    participant NextApp as Next.js App Router
    participant Dashboard as Dashboard Page (src/app/page.js)
    participant Supabase as Supabase Backend
    participant UI as UI Components (Button/Card/Dialog/etc.)

    Browser->>NextApp: Request /
    NextApp-->>Browser: Render Dashboard (client component)

    Browser->>Dashboard: Load / Hydrate
    Dashboard->>Supabase: auth.getUser()
    Supabase-->>Dashboard: User (or null)

    Dashboard->>Supabase: from("reports").select().order(...)
    Supabase-->>Dashboard: Reports[]

    Dashboard->>UI: Render metrics, search input, report cards

    Browser->>Dashboard: Click "Add report"
    Dashboard->>UI: Open Dialog (DialogContent with form)

    Browser->>Dashboard: Submit form
    Dashboard->>Supabase: from("reports").insert(payload)
    Supabase-->>Dashboard: Insert result
    Dashboard->>Supabase: Re-fetch reports
    Supabase-->>Dashboard: Updated Reports[]
    Dashboard->>UI: Re-render list and metrics
Loading

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants